package com.dhcc.rabbitmq.topicexchange.producer;

import org.springframework.amqp.core.AmqpTemplate;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;

import com.dhcc.rabbitmq.topicexchange.config.TopicRabbitConfig;

/**
 * 
* <p>标题: MsgSender.java</p>
* <p>业务描述:主题模式</p>
* <p>公司:东华软件股份公司</p>
* <p>版权:dhcc2013</p>
* @author 胡凯
* @date 2019年7月29日
* @version V1.0
 */
@Component
public class MsgSender {

    @Autowired
    private AmqpTemplate rabbitTemplate;

    /**
     * 
    * 方法名:          send1
    * 方法功能描述:    send1方法会匹配到topic.
    * 				  #和topic.message 两个Receiver都可以收到消息					    
    * @param:         是包含汉字的字符串
    * @return:        其他非简体汉字返回 '0';
    * @Author:        胡凯
    * @Create Date:   2019年7月29日 下午2:16:27
     */
    public void send1() {
        String context = "hi, i am message 1";
        System.out.println("Sender : " + context);
        this.rabbitTemplate.convertAndSend(TopicRabbitConfig.TOPIC_EXCHANGE_NAME, "topic.message", context);
    }


    /**
     * 
    * 方法名:          send2
    * 方法功能描述:    发送send2只有topic.
					  #可以匹配所有只有Receiver2监听到消息
    * @param:         是包含汉字的字符串
    * @return:        其他非简体汉字返回 '0';
    * @Author:        胡凯
    * @Create Date:   2019年7月29日 下午2:17:33
     */
    public void send2() {
        String context = "hi, i am messages 2";
        System.out.println("Sender : " + context);
        this.rabbitTemplate.convertAndSend(TopicRabbitConfig.TOPIC_EXCHANGE_NAME, "topic.messages", context);
    }
}
